Technical Field
The present disclosure relates to testing of multi-tier applications and more specifically to confirming enforcement of business rules specified in a data access tier of a multi-tier application.
Related Art
An application refers to a software program, which on execution performs specific desired tasks. For convenience, an application may be divided into multiple tiers, with each tier providing a disparate and specific utility with appropriate interfaces for interacting with other tiers. The different tiers, executing on the same machine or on different machines connected through a network, operate together to perform the desired tasks.
An example of a multi-tier application is a three-tier application in which a presentation tier provides user interfaces, a business logic tier implements the general computational aspects and a data tier provides a persistent storage for data (e.g. databases). Having such multiple tiers generally enables different tiers to be designed/developed by different groups/vendors, etc., and also simplifies maintenance of the software program/application.
A data access tier is one of the tiers employed to control access to data stored in secondary/persistent storages. Data access tier operates to provide (to higher level tiers) a data model (at abstract levels such as objects, instead of at byte level, etc.), which is independent of the underlying storage type/mechanism, etc. Higher level tiers (hereafter referred to as “interface tiers”) are typically designed to access the data using such data models, thereby enabling the access function in the interface tiers to be implemented independent of the storage technique/mechanism.
Business rules specify the conditions to be satisfied for permitting data in the secondary/persistent storage to be accessed (stored/retrieved). For example, a business rule may indicate that the age of an employee must be between 18 and 60, and thus when age is being changed (created or updated), the data access tier automatically ensures that the age condition in the business rule is enforced or verified. However, the conditions can be more complex depending on more than one variable.
There is a general need to check/confirm that the intended (or earlier specified) business rules in a data access tier are enforced when data is accessed in a multi-tier application.
In the drawings, like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digit(s) in the corresponding reference number.